package org.x.usermod.entity;

import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;

import java.util.Date;

/**
 * 角色表 实体类
 */
@Data
@Table("sys_role")
public class SysRole {

    @Id(keyType = KeyType.Auto)
    @Column("id")
    private Long id;                    // 角色ID

    @NotBlank(message = "角色名称不能为空")
    @Column("name")
    private String name;                // 角色名称

    @NotBlank(message = "角色编码不能为空")
    @Column("code")
    private String code;                // 角色编码

    @Column("data_scope")
    private Integer dataScope;          // 数据范围

    @Column(value = "is_delete", isLogicDelete = true)
    private Integer isDelete;           // 逻辑删除:0-未删除,1-已删除

    @Column("created_by")
    private String createdBy;           // 创建人

    @Column("updated_by")
    private String updatedBy;           // 更新人

    @Column("created_time")
    private Date createdTime;           // 创建时间

    @Column("updated_time")
    private Date updatedTime;           // 更新时间
}